package com.hig.ledger.mapper;

import java.util.List;
import com.hig.ledger.domain.LedgerWorkPermit;
import org.apache.ibatis.annotations.Select;

/**
 * 特种作业许可证清单Mapper接口
 * 
 * @author scp
 * @date 2024-09-22
 */
public interface LedgerWorkPermitMapper 
{
    /**
     * 查询特种作业许可证清单
     * 
     * @param id 特种作业许可证清单ID
     * @return 特种作业许可证清单
     */
    public LedgerWorkPermit selectLedgerWorkPermitById(Long id);

    /**
     * 查询特种作业许可证清单列表
     * 
     * @param ledgerWorkPermit 特种作业许可证清单
     * @return 特种作业许可证清单集合
     */
    public List<LedgerWorkPermit> selectLedgerWorkPermitList(LedgerWorkPermit ledgerWorkPermit);

    /**
     * 新增特种作业许可证清单
     * 
     * @param ledgerWorkPermit 特种作业许可证清单
     * @return 结果
     */
    public int insertLedgerWorkPermit(LedgerWorkPermit ledgerWorkPermit);
    @Select("SELECT IFNULL(MAX(id), 0) + 1 FROM ledger_work_permit")
    long getNextId();
    /**
     * 修改特种作业许可证清单
     * 
     * @param ledgerWorkPermit 特种作业许可证清单
     * @return 结果
     */
    public int updateLedgerWorkPermit(LedgerWorkPermit ledgerWorkPermit);

    /**
     * 删除特种作业许可证清单
     * 
     * @param id 特种作业许可证清单ID
     * @return 结果
     */
    public int deleteLedgerWorkPermitById(Long id);

    /**
     * 批量删除特种作业许可证清单
     * 
     * @param ids 需要删除的数据ID
     * @return 结果
     */
    public int deleteLedgerWorkPermitByIds(Long[] ids);
}
